71 research outputs found

    A Distribution Law for CCS and a New Congruence Result for the pi-calculus

    Get PDF
    We give an axiomatisation of strong bisimilarity on a small fragment of CCS that does not feature the sum operator. This axiomatisation is then used to derive congruence of strong bisimilarity in the finite pi-calculus in absence of sum. To our knowledge, this is the only nontrivial subcalculus of the pi-calculus that includes the full output prefix and for which strong bisimilarity is a congruence.Comment: 20 page

    Encapsulation and Dynamic Modularity in the Pi-Calculus

    Get PDF
    We describe a process calculus featuring high level constructs for component-oriented programming in a distributed setting. We propose an extension of the higher-order pi-calculus intended to capture several important mechanisms related to component-based programming, such as dynamic update, reconfiguration and code migration. In this paper, we are primarily concerned with the possibility to build a distributed implementation of our calculus. Accordingly, we define a low-level calculus, that describes how the high-level constructs are implemented, as well as details of the data structures manipulated at runtime. We also discuss current and future directions of research in relation to our analysis of component-based programming

    Separability in the Ambient Logic

    Get PDF
    The \it{Ambient Logic} (AL) has been proposed for expressing properties of process mobility in the calculus of Mobile Ambients (MA), and as a basis for query languages on semistructured data. We study some basic questions concerning the discriminating power of AL, focusing on the equivalence on processes induced by the logic (=L>)(=_L>). As underlying calculi besides MA we consider a subcalculus in which an image-finiteness condition holds and that we prove to be Turing complete. Synchronous variants of these calculi are studied as well. In these calculi, we provide two operational characterisations of =L_=L: a coinductive one (as a form of bisimilarity) and an inductive one (based on structual properties of processes). After showing =L_=L to be stricly finer than barbed congruence, we establish axiomatisations of =L_=L on the subcalculus of MA (both the asynchronous and the synchronous version), enabling us to relate =L_=L to structural congruence. We also present some (un)decidability results that are related to the above separation properties for AL: the undecidability of =L_=L on MA and its decidability on the subcalculus.Comment: logical methods in computer science, 44 page

    Using Pi-Calculus Names as Locks

    Full text link
    Locks are a classic data structure for concurrent programming. We introduce a type system to ensure that names of the asynchronous pi-calculus are used as locks. Our calculus also features a construct to deallocate a lock once we know that it will never be acquired again. Typability guarantees two properties: deadlock-freedom, that is, no acquire operation on a lock waits forever; and leak-freedom, that is, all locks are eventually deallocated. We leverage the simplicity of our typing discipline to study the induced typed behavioural equivalence. After defining barbed equivalence, we introduce a sound labelled bisimulation, which makes it possible to establish equivalence between programs that manipulate and deallocate locks.Comment: In Proceedings EXPRESS/SOS2023, arXiv:2309.0578

    Using Ambients to Control Resources (long version)

    Get PDF
    Current software and hardware systems, being parallel and reconfigurable, raise new safety and reliability problems, and the resolution of these problems requires new methods. Numerous proposals attempt at reducing the threat of bugs and preventing several kinds of attacks. In this paper, we develop an extension of the calculus of Mobile Ambients, named Controlled Ambients, that is suited for expressing such issues, specifically Denial of Service attacks. We present a type system for Controlled Ambients, which makes static resource control possible in our setting

    Towards a Formalization of pi-calculus Processes in Higher Order Abstract Syntax

    Get PDF
    Higher order abstract syntax is a natural way to formalize programming languages with binders, like the pi-calculus, because alpha-conversion and beta-reduction are delegated to the meta level of the provers, making tedious substitutions superfluous. However, such formalizations usually lack induction principles, and often give rise to exotic terms. Induction is necessary in syntax analysis, and certain important syntactic properties might be invalid in the presence of exotic terms. The paper introduces well formedness predicates for the pi-calculus with which exotic terms are excluded and, simultaneously, induction principles are obtained. The principles are then used in formal proofs of vital syntactic properties, mechanized in Isabelle/HOL.La syntaxe abstraite d'ordre supĂ©rieur est une technique pour la formalisation de langages comportant des constructions liantes tels que le pi-calcul. GrĂące Ă  cette technique, l'utilisateur n'a pas Ă  gĂ©rer explicitement une notion de substitution, l'alpha-conversion et la bĂ©ta-rĂ©duction faisant intervenir les variables du niveau meta; Cependant, dans une telle approche, l'on ne dispose pas de principe d'induction de maniĂšre naturelle, et de plus le langage tel qu'il est formalisĂ© peut englober des termes considĂ©rĂ©s comme exotiques; Dans ce travail nous dĂ©finissons des prĂ©dicats de bonne formation pour le pi-calcul permettant d’éliminer les termes exotiques et fournissant des principes d'induction? Ceci rend possible la preuve de propriĂ©tĂ©s syntaxiques essentielles pour le pi-calcul., que nous formalisons dans le systĂšme Isabelle/HO

    On the Representation of References in the Pi-Calculus

    Get PDF
    International audienceThe π-calculus has been advocated as a model to interpret, and give semantics to, languages with higher-order features. Often these languages make use of forms of references (and hence viewing a store as set of references). While translations of references in π-calculi (and CCS) have appeared, the precision of such translations has not been fully investigated. In this paper we address this issue. We focus on the asynchronous π-calculus (Aπ), where translations of references are simpler. We first define π ref , an extension of Aπ with references and operators to manipulate them, and illustrate examples of the subtleties of behavioural equivalence in π ref. We then consider a translation of π ref into Aπ. References of π ref are mapped onto names of Aπ belonging to a dedicated "reference" type. We show how the presence of reference names affects the definition of barbed congruence. We establish full abstraction of the translation w.r.t. barbed congruence and barbed equivalence in the two calculi. We investigate proof techniques for barbed equivalence in Aπ, based on two forms of labelled bisimilarities. For one bisimilarity we derive both soundness and completeness; for another, more efficient and involving an inductive 'game' on reference names, we derive soundness, leaving completeness open. Finally, we discuss examples of uses of the bisimilarities

    Name-passing calculi: from fusions to preorders and types

    Get PDF
    This is the appendix of the paper "Name-passing calculi: from fusions to preorders and types" (D Hirschkoff, JM. Madiot, D. Sangiorgi), to appear in LICS'2013
    • 

    corecore